Method and apparatus for providing location information for a wireless communication device

ABSTRACT

Aspects of the subject disclosure may include, for example, a SIM card obtaining GPS location data, second location data and communication session measurement data; monitoring for a wireless network connection between a controller of a wireless device and a wireless network; and, responsive to a failure to detect the wireless network connection, providing the aggregated location data to a wireless communication circuit of the SIM card for wireless transmitting via an antenna of the SIM card to a wireless access point to cause the wireless access point to transmit the aggregated location data to a location server. Other embodiments are disclosed.

FIELD OF THE DISCLOSURE

The subject disclosure relates to a method and apparatus for providinglocation information for a wireless communication device.

BACKGROUND

Users often desire to know their present location. Location-basedservices (e.g., navigation applications) utilize present locations toprovide communication services. The accuracy of the locationdetermination can impact the service being provided by the wirelessdevice. For example, GPS-based navigation services within a city thathas tall buildings can be inaccurate or sometimes unavailable.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference will now be made to the accompanying drawings, which are notnecessarily drawn to scale, and wherein:

FIG. 1 depicts an illustrative embodiment of a subscriber identitymodule that enables the transmission of location data;

FIG. 2 depicts an illustrative embodiment of a system that can utilizethe subscriber identity module of FIG. 1 for providing location-basedservices to, or storing location tracking information from, wirelesscommunication devices;

FIG. 3 depicts another illustrative embodiment of a subscriber identitymodule that enables transmitting of location data;

FIG. 4 depicts an illustrative embodiment of a method for providing orstoring location data and location-based services for wirelesscommunication devices;

FIG. 5 depicts an illustrative embodiment of a communication system thatprovides communication services including location-based services;

FIG. 6 depicts an illustrative embodiment of a communication device; and

FIG. 7 is a diagrammatic representation of a machine in the form of acomputer system within which a set of instructions, when executed, maycause the machine to perform any one or more of the methods describedherein.

DETAILED DESCRIPTION

The subject disclosure describes, among other things, illustrativeembodiments for collecting and distributing data, via a SubscriberIdentity Module (SIM card) that facilitates providing location-basedservices to end user devices. In one or more embodiments, a SIM card canbe provided that can operate independently of the wireless deviceprocessor and the wireless device antenna to collect and distribute thedata. The SIM card can include a SIM antenna, a wireless communicationcircuit (e.g., a WiFi chip), a Global Positioning System (GPS) chip anda storage device. The SIM card can collect multiple forms of locationdata (e.g., GPS location data, WiFi location data, cellular locationdata) and can provide the aggregate of this data to a location servervia a network connection or via a wireless transmission over the WiFichip (or other communication mode of the SIM card) and/or can store thelocation data until a wireless connection is available to transmit thedata.

The SIM card described with respect to the exemplary embodiments can beany type of identity module that is utilized by a wireless deviceincluding full-size SIM, mini SIM, micro SIM, nano SIM, embedded SIM,Universal Integrated Circuit Card (UICC), or smart card. Otherembodiments are described in the subject disclosure.

One embodiment of the subject disclosure is a communication deviceincluding a first memory that stores first executable instructions, afirst antenna, a controller coupled with the first memory and the firstantenna where the controller responsive to executing the firstexecutable instructions provides wireless communication services via thefirst antenna including establishing wireless communication sessionswith other communication devices, and a subscriber identity moduleincluding a second antenna, a GPS circuit, a WiFi circuit, a processorand a second memory that stores second executable instructions. Theprocessor, responsive to executing the second executable instructions,facilitates performance of operations including obtaining, via the GPScircuit and the second antenna, GPS location data. The processor canobtain, via the WiFi circuit and the second antenna, WiFi location data.The processor can obtain, via the controller and the first antenna,communication session measurement data. The processor can store the GPSlocation data, the WiFi location data and the communication sessionmeasurement data in the second memory as aggregated location data. Theprocessor can, responsive to a detection of a wireless networkconnection between the controller (via the first antenna) and a wirelessnetwork, provide the aggregated location data to the controller forwireless transmitting to a location server. The processor can,responsive to a failure to detect the wireless network connectionbetween the controller and the wireless network, provide the aggregatedlocation data to the WiFi circuit for wireless transmitting via thesecond antenna to a wireless access point to cause the wireless accesspoint to transmit the aggregated location data to the location server.In one embodiment, in the event of a failure to detect the wirelessnetwork or a wireless access point, the location information data can beplaced in storage on the eSIM by the processor until the data can betransmitted by either the wireless network or a wireless access point.

One embodiment of the subject disclosure is a machine-readable storagemedium, including executable instructions that, when executed by aprocessor of a subscriber identity module of a wireless communicationdevice, facilitate performance of operations, including obtaining, via aGPS circuit and a second antenna of the subscriber identity module, GPSlocation data. The processor can obtain, via the second antenna and awireless communication circuit of the subscriber identity module, secondlocation data. The processor can obtain, via a controller and a firstantenna of the wireless communication device, communication sessionmeasurement data. The processor can store the GPS location data, thesecond location data and the communication session measurement data in amemory of the subscriber identity module as aggregated location data.The processor can monitor for a wireless network connection between thecontroller, via the first antenna, and a wireless network. The processorcan, responsive to a failure to detect the wireless network connectionbetween the controller and the wireless network, provide the aggregatedlocation data to the wireless communication circuit for wirelesstransmitting via the second antenna to a wireless access point to causethe wireless access point to transmit the aggregated location data to alocation server.

One embodiment of the subject disclosure is a method that includesreceiving, by a system including a processor, aggregated location datafrom a WiFi circuit and a second antenna of a subscriber identity moduleof a wireless communication device without receiving the aggregatedlocation data from a controller and a first antenna of the wirelesscommunication device. The controller and the first antenna enablewireless communication services for the wireless communication device.The aggregated location data includes GPS location data, WiFi locationdata, and communication session measurement data. The GPS location datais collected by a GPS circuit of the subscriber identity module. TheWiFi location data is collected by the WiFi circuit of the subscriberidentity module. The communication session measurement data is collectedby the controller of the wireless communication device. The methodincludes analyzing the aggregated location data to determine a locationof the wireless communication device and transmitting the location ofthe wireless communication device to the wireless communication deviceto enable the controller to provide a location-based service at thewireless communication device.

FIG. 1 depicts an illustrative embodiment of a SIM card 100 that enablesexchange of location information so that location-based services can beprovided to a wireless communication device. The wireless communicationdevice can be a mobile device (e.g., a mobile phone, tablet, laptopcomputer, vehicle navigation system, and so forth) or a fixed device.For example, the wireless device can be installed in a vending machinethat keeps track of inventory. The SIM card 100 placed in that wirelessdevice can provide greater location accuracy to tell the vendor'sdelivery person exactly where the machine is located (e.g., within abuilding or on a campus) that needs additional supplies.

SIM card 100 can include a processor 110 that can include a storagedevice integrated therewith or separately located on the SIM card. TheSIM card 100 can also include a SIM antenna 120, a wirelesscommunication circuit 130 (e.g., a WiFi circuit), a GPS circuit 140,and/or a SIM chip 150.

SIM card 100 enables providing more accurate location data for thewireless communication device. In one embodiment, SIM card 100 canenhance the capabilities of SIM and/or storage devices by incorporatingthe above-features into the SIM card to capture, store, process, and/ortransmit location data independent of whether the wireless communicationdevice is a connected device. SIM card 100 can incorporate or otherwiseprovide for Standard SIM, Mini SIM, Micro SIM, Nano SIM, and/or storagedevices, as well as future iterations of SIM and storage devices on 2G,3G, 4G, 5G, and so forth technology.

The GPS circuit 140 can be a GPS chip embedded into the SIM card withthe SIM antenna also embedded into the SIM card so that the SIM card hasthe ability to capture satellite location data independently of aconnected device.

The wireless communication circuit 130 can be a WiFi chip embedded intothe SIM card 100 that serves as a data collection device as well as anoptional data transfer point. The SIM card can collect and aggregatelocation data, as well as other data associated with the use of thewireless communication device, to create greater predictive accuracyabout the precise location of the SIM card and the wirelesscommunication device. In one embodiment, the aggregated data can beprovided to a remote server, such as via the WiFi circuit 130 and theSIM antenna 120, so that the remote server (e.g., a network locationserver) can calculate a more accurate location of the wirelesscommunication device. SIM card 100 also provides increased storagecapabilities to accommodate the storage of collected location data, aswell as other data. The increased storage allows for collection of dataover longer periods of time and transmitting of that data at moreappropriate times, including for example when wireless network or accesspoint connectivity is available.

The SIM chip 150 can be used for identifying subscriber services,executing programs, storing subscriber data, and so forth. In oneembodiment, the SIM chip 150 can communicate with a wireless network viaone or both of the antenna 120 (e.g., via a WiFi transmission using WiFicircuit 130) or the phone's antenna (using a cellular transmission). TheSIM chip 150 can be used for various purposes including facilitatingestablishing communication services and provisioning of the wirelesscommunication device.

In one embodiment, the SIM card 100 can be a removable identity modulethat can be removably connected with a wireless communication device(e.g., a mobile phone) that provides wireless communication services viathe devices controller and antenna, including voice, video, data and/ormessaging services. The SIM card 100 can obtain GPS location data viathe GPS circuit 140 and the SIM antenna 120, independently of whetherthere is a network connection for the mobile phone. The SIM card 100 canobtain WiFi location data via the WiFi circuit 130 and the SIM antenna120, independently of whether there is a network connection for themobile phone. The SIM card 100 can obtain, via the phone's controllerand the phone's antenna, communication session measurement data. The SIMcard 100 can store the GPS location data, the WiFi location data and thecommunication session measurement data (as aggregated location data) ina memory of the SIM card 100 (which is shown in FIG. 1 as an integratedstorage with processor 110 but could also be a separate storage deviceembedded in the SIM card). The collection of data is not limited tolocation information and can include other data as well including forexample performance parameters associated with the phone (e.g., RSSIdata or other signal parameters), diagnostic data for the phone,consumption history for the phone (e.g., a history of websites visitsand/or content presented), phone configurations, contact list data,calendar data, time-stamp data, WiFi access point identification data,geo-fence information, and so forth. This example is described withrespect to a wireless device that is a mobile device (i.e., a mobilephone), but is also applicable to other types of wireless devices,including mobile wireless devices and fixed wireless devices.

In one embodiment, the processor 110 can determine the most efficientmethod of transmitting the aggregated data or can determine a desiredmethod of transmitting the aggregated data. For example, responsive to adetection of a wireless network connection between the phone'scontroller and a wireless network (via the phone's antenna), theprocessor 110 of the SIM card 100 can provide the aggregated locationdata to the controller for wireless transmitting to a location server.However, responsive to a failure to detect the wireless networkconnection between the phone's controller and the wireless network, theprocessor 110 of the SIM card 100 can provide the aggregated locationdata to the WiFi circuit 130 for wireless transmitting via the SIMantenna 120, such as to a wireless access point to cause the wirelessaccess point to transmit the aggregated location data to the locationserver.

In one embodiment, the failure to detect the wireless network connectionbetween the phone's controller and the wireless network can be based on:monitoring for the wireless network connection between the phone'scontroller, via the first antenna, and the wireless network over a timeperiod; and providing the aggregated location data to the WiFi circuitafter expiration of the time period.

In one embodiment, the communication session measurement data caninclude signal round trip time information. In one embodiment, thestoring of the aggregated location data in the SIM card memory isperformed without storing the aggregated location data in a separatememory of the phone device.

In one embodiment, the SIM card 100 can obtain device diagnostic datafrom the phone's controller, such as performance measurements foroperations of the mobile phone; store the device diagnostic data in theSIM card memory; responsive to detecting a wireless network connectionbetween the phone's controller (via the first antenna) and the wirelessnetwork, provide the device diagnostic data to the phone's controllerfor wireless transmitting to a diagnostics server; and responsive to afailure to detect the wireless network connection between the phone'scontroller and the wireless network, provide the device diagnostic datato the WiFi circuit 130 for wireless transmitting via the SIM antenna120 to the wireless access point to cause the wireless access point totransmit the aggregated location data to the diagnostics server.

In one embodiment, the SIM card 100, by way of collecting andtransmitting the aggregated location data, can enable location-basedservices at the mobile phone including receiving product, location orother information associated with a product in proximity to the mobilephone, where the product information is received via one or both of theSIM antenna or the phone's antenna from a content server responsive tothe content server receiving a location of the mobile phone from thelocation server, and where the location of the mobile phone isdetermined based on an analysis of the aggregated location data by thelocation server. In one embodiment, the product information can includea coupon associated with the product, and the location of the mobilephone can indicate the proximity with respect to the product.

In one embodiment, the collecting and transmitting of the aggregateddata by the SIM card 100 can enable a location-based service, where thelocation-based service is provided via the phone's antenna from anetwork application server responsive to the network application serverreceiving a location of the mobile phone from the location server, andwhere the location of the mobile phone is determined based on ananalysis of the aggregated location data by the location server.

In one embodiment, the phone's controller, via the phone's antenna, canreceive a location of the mobile phone from the location server, wherethe location of the mobile phone is determined based on an analysis ofthe aggregated location data by the location server.

In one embodiment, the processor 110, via the SIM antenna 120 and theWiFi circuit 130, can receive a location of the mobile phone from thelocation server, where the location of the mobile phone is determinedbased on an analysis of the aggregated location data by the locationserver.

In one embodiment, the processor 110 can receive the location via theSIM antenna 120 and the WiFi circuit 130 responsive a lack of thewireless network connection between the phone's controller and thewireless network.

FIG. 2 depicts an illustrative embodiment of a system 200 that enableslocation-based services to be provided to a wireless communicationdevice 216 that has the SIM card 100. System 200 can include a datawarehouse 230 which receives some or all of the data that is collectedby the SIM card 100. Various other data associated with the wirelesscommunication device 216 can also be stored at the data warehouse 230,such as subscriber information, data associated with other communicationdevices that are related to the device 216 (e.g., consumption history,user preferences, device configurations, and so forth).

In one embodiment at step 1, processor 110 can communicate with the GPScircuit 140 to trigger the GPS circuit to gather location data (e.g.,time, events, geofences, and so forth). At step 2, the GPS circuit 140can access the SIM antenna 120 to obtain the location data and canprovide this information to a storage device of the SIM card. At step 3,other data can also be collected including one or both of cellulartriangulation data and WiFi data. At step 4, when a connectionsatisfying a connection threshold is detected, the processor 110 cantransmit all or some of the aggregated data via the SIM chip 150 (e.g.,via the phone's antenna 218) or the WiFi circuit 130 to the datawarehouse 230 for storage and/or analysis.

In one embodiment, aggregated data stored in the data warehouse 230 canbe analyzed for providing location-based services to the wireless device216. As an example, aggregated location data can be received by the datawarehouse 230 from the WiFi circuit 130 and the SIM antenna 120 of theSIM card 100 without receiving the aggregated location data from acontroller and a main antenna of the wireless device 216, where thecontroller and the main antenna enable wireless communication servicesfor the wireless device, and where the aggregated location data includesGPS location data, WiFi location data, and communication sessionmeasurement data. In this example, the GPS location data can becollected by the GPS circuit 140 of the SIM card 100, while the WiFilocation data is collected by the WiFi circuit 130, and while thecommunication session measurement data is collected by the controller ofthe wireless device 216. The aggregated location data can then beanalyzed, such as by a location server, to determine a location of thewireless device 216. The location of the wireless device 216 can betransmitted to the wireless device to enable the controller to provide alocation-based service at the wireless device.

In one embodiment, the transmitting of the location of the wirelessdevice 216 to the wireless device can include: monitoring for a wirelessnetwork connection between the controller, via the main antenna, and awireless network; and responsive to a failure to detect the wirelessnetwork connection between the controller and the wireless network,transmitting the aggregated location data to a wireless access point tocause the wireless access point to transmit the aggregated location datato the WiFi circuit 130 via the SIM antenna 120.

In one embodiment, the location-based service can include receivingproduct, location or other information associated with a product inproximity to the wireless device 216, where the product or otherinformation is received from a content server responsive to the contentserver receiving the location of the wireless device, where the productinformation comprises a coupon associated with the product, and wherethe location of the wireless device indicates the proximity with respectto the product.

In one embodiment, the data being collected by the SIM card 100 caninclude one or more of Assisted GPS (AGPS) data, cellular triangulationdata, GPS location data (e.g., latitude/longitude data), satellitelocation data paired with cellular location data on the device, WiFinetwork data (e.g., discovered WiFi networks that the WiFi chip detectsand/or is connected to), and/or device diagnostic data and healthinformation (e.g., utilized for predictions on when a new device may beneeded).

In one embodiment, all or some of the collected data can be utilized ina location algorithm that can accurately determine a precise location ofthe wireless device, such as within proximity to a product in an aisleof a store. In one embodiment, AGPS and GPS data can be utilizedtogether with WiFi information and data stored on the SIM card or in aremote data warehouse to enhance a location determination accuracy forthe position of the wireless device.

In one embodiment, the aggregated data may be transferred from the SIMcard through a connected device's built in antenna. When the connectionis unavailable or it is otherwise not desired to utilize such aconnection, the aggregated data may be transferred by the embedded WiFichip (or other wireless communication circuit of the SIM card) throughopen WiFi hotspots.

In one embodiment, upon collection from the wireless device, theaggregated data can be stored and analyzed (e.g., in conjunction withother information received from other devices associated with the samesubscriber) to understand and predict consumer behaviors and trends toassist in areas such as marketing, network improvement, public safety,and so forth.

FIG. 3 depicts an illustrative embodiment of another SIM card 300 whichincludes various components described with respect to SIM card 100including the processor 110, the SIM antenna 120, the GPS circuit 140and the SIM chip 150. SIM card 300 can be a multi-mode device thatenables providing wireless communications (via antenna 120) utilizingdifferent communication protocols. As an example, the SIM card 300 caninclude a group of wireless communication chips 330 that each enablewireless communications via different wireless protocols, such as WiFi,Bluetooth, Near Filed Communications, and so forth. For instance, theprocessor 110 can select a target wireless protocol (as well as thecorresponding wireless chip) from among the group of different wirelessprotocols for the wireless transmitting via the SIM antenna 120 to thewireless access point. In one embodiment, the selecting of the protocoland the wireless chip is according to performance parameters determinedfor the group of different wireless protocols; availability of thewireless access point for the group of different wireless protocols, ora combination thereof.

FIG. 4 depicts an illustrative embodiment of a method 400 that can beused for providing location-based services. Method 400 can utilize SIMcard 100 and/or 300, as well as other devices described in system 200.At 402, processor 110 of a SIM card can obtain, via the GPS circuit 140and the SIM antenna 120, GPS location data. At 404, processor 110 canobtain, via the SIM antenna and a wireless communication circuit 130,second location data. At 406, processor 110 can obtain, via a controllerand a main antenna of the wireless communication device, communicationsession measurement data. The GPS location data, the second locationdata and the communication session measurement data can be stored in amemory of the SIM card as aggregated location data.

At 408, monitoring can be performed to detect a wireless networkconnection between the wireless device's controller (e.g., a base-bandprocessor and/or a phone CPU), via the main antenna, and a wirelessnetwork. At 410, if a network connection is detected then the processor110 can provide the aggregated data to the wireless device's controllerso that the aggregated data can be transmitted via the networkconnection. At 412, responsive to a failure to detect the wirelessnetwork connection between the wireless device's controller and thewireless network, the aggregated location data can be provided by theprocessor 110 to the wireless communication circuit 130 (e.g., a WiFicircuit) for wireless transmitting via the SIM antenna 120 to a wirelessaccess point to cause the wireless access point to transmit theaggregated location data to a location server. At 414, responsive to afailure to detect the wireless network or a wireless access point, thelocation information data derived above can be placed in storage on theSIM card 100 by the processor 110 until the data can be transmitted byeither the wireless network or a wireless access point.

In one embodiment, the wireless communication circuit 130 enableswireless communications via the SIM antenna 120 utilizing WiFi,Bluetooth, Near Field Communications, or a combination thereof. In oneembodiment, the SIM card, responsive to a lack of the wireless networkconnection between the wireless device's controller and the wirelessnetwork, can receive, at the processor 110 via the SIM antenna 120 andthe wireless communication circuit 130, a location of the wirelessdevice from the location server, where the location of the wirelessdevice is determined based on an analysis of the aggregated locationdata by the location server.

In one embodiment, the wireless communication circuit 130 can be amulti-mode device that enables wireless communications utilizing a groupof different wireless protocols, where the processor 110 selects atarget wireless protocol from among the group of different wirelessprotocols for the wireless transmitting via the wireless communicationcircuit 130 and the SIM antenna 120 to the wireless access point, andwhere the selecting is according to performance parameters determinedfor the group of different wireless protocols, availability of thewireless access point for the group of different wireless protocols, ora combination thereof.

In one embodiment, the providing of the aggregated location data to thewireless communication circuit 130 for the wireless transmitting to thewireless access point causes the wireless device's controller to receive(via the main antenna) product, location or other information associatedwith a product in proximity to the wireless device, where the product orother information is received from a content server responsive to thecontent server receiving a location of the wireless device from thelocation server, and where the location of the wireless device isdetermined based on an analysis of the aggregated location data by thelocation server.

FIG. 5 depicts an illustrative embodiment of a communication system 500for delivering communication services, which can include location-basedservices. The communication system 500 can include an Internet ProtocolTelevision (IPTV) media system. Communication system 500 can be overlaidor operably coupled with system 200 as another representative embodimentof communication system 500.

System 500 can be an IP video network which can be utilized for thetransmission of the location information collected via SIM card 100.However, the location information collected via SIM card 100 can betransmitted by WiFi access to a broadband IP network that is used forsuch transmissions, such as through use of WiFi router 505 and/or abroadband network router 599.

For instance, one or more devices illustrated in the communicationsystem 500 of FIG. 5 can provide a user with a location-based servicethrough use of a SIM card that collects and transmits aggregated data,including various types of location data (e.g., GPS location data, WiFilocation data, Cellular location data, and so forth). In one embodiment,system 500 enables receiving aggregated location data from a WiFicircuit and a SIM antenna of a SIM card of a wireless device withoutreceiving the aggregated location data from a controller and a mainantenna of the wireless device, where the controller and the mainantenna enable wireless communication services for the wireless device.The aggregated location data can include GPS location data, WiFilocation data, and/or communication session measurement data. The GPSlocation data can be collected by a GPS circuit of the SIM card. TheWiFi location data can be collected by a WiFi circuit of the SIM card.The communication session measurement data can be collected by thecontroller of the wireless device. The aggregated location data can beanalyzed to determine a location of the wireless device. The location ofthe wireless device can be transmitted to the wireless device to enablethe wireless device's controller to provide a location-based service atthe wireless device.

The IPTV media system can include a super head-end office (SHO) 510 withat least one super headend office server (SHS) 511 which receives mediacontent from satellite and/or terrestrial communication systems. In thepresent context, media content can represent, for example, audiocontent, moving image content such as 2D or 3D videos, video games,virtual reality content, still image content, and combinations thereof.The SHS server 511 can forward packets associated with the media contentto one or more video head-end servers (VHS) 514 via a network of videohead-end offices (VHO) 512 according to a multicast communicationprotocol.

The VHS 514 can distribute multimedia broadcast content via an accessnetwork 518 to commercial and/or residential buildings 502 housing agateway 504 (such as a residential or commercial gateway). The accessnetwork 518 can represent a group of digital subscriber line accessmultiplexers (DSLAMs) located in a central office or a service areainterface that provide broadband services over fiber optical links orcopper twisted pairs 519 to buildings 502. The gateway 504 can usecommunication technology to distribute broadcast signals to mediaprocessors 506 such as Set-Top Boxes (STBs) which in turn presentbroadcast channels to media devices 508 such as computers or televisionsets managed in some instances by a media controller 507 (such as aninfrared or RF remote controller).

The gateway 504, the media processors 506, and media devices 508 canutilize tethered communication technologies (such as coaxial, powerlineor phone line wiring) or can operate over a wireless access protocolsuch as Wireless Fidelity (WiFi), Bluetooth®, Zigbee®, or other presentor next generation local or personal area wireless network technologies.By way of these interfaces, unicast communications can also be invokedbetween the media processors 506 and subsystems of the IPTV media systemfor services such as video-on-demand (VoD), browsing an electronicprogramming guide (EPG), or other infrastructure services.

A satellite broadcast television system 529 can be used in the mediasystem of FIG. 5. The satellite broadcast television system can beoverlaid, operably coupled with, or replace the IPTV system as anotherrepresentative embodiment of communication system 500. In thisembodiment, signals transmitted by a satellite 515 that include mediacontent can be received by a satellite dish receiver 531 coupled to thebuilding 502. Modulated signals received by the satellite dish receiver531 can be transferred to the media processors 506 for demodulating,decoding, encoding, and/or distributing broadcast channels to the mediadevices 508. The media processors 506 can be equipped with a broadbandport to an Internet Service Provider (ISP) network 532 to enableinteractive services such as VoD and EPG as described above.

In yet another embodiment, an analog or digital cable broadcastdistribution system such as cable TV system 533 can be overlaid,operably coupled with, or replace the IPTV system and/or the satelliteTV system as another representative embodiment of communication system500. In this embodiment, the cable TV system 533 can also provideInternet, telephony, and interactive media services. System 500 enablesvarious types of interactive television and/or services including IPTV,cable and/or satellite.

The subject disclosure can apply to other present or next generationover-the-air and/or landline media content services system.

Some of the network elements of the IPTV media system can be coupled toone or more computing devices 530, a portion of which can operate as aweb server for providing web portal services over the ISP network 532 towireline media devices 508 or wireless communication devices 516.

Communication system 500 can also provide for all or a portion of thecomputing devices 530 to function as a location server (herein referredto as server 530). The server 530 can use computing and communicationtechnology to perform function 562, which can include among otherthings, analyzing aggregated location data of a wireless device todetermine an accurate location for the wireless device. The aggregatedlocation data can include various forms of location data including GPSlocation data, WiFi location data, cellular location data, networklocation data, and so forth. For instance, function 562 of server 530can be similar to the functions described for the data warehouse 230 ofFIG. 2, the location server and/or the content server in accordance withmethod 400.

The media processors 506 can be provisioned with software functions 564to provide additional data to the server 530, including mediaconsumption history, user preferences, and so forth. The wirelesscommunication devices 516 can be provisioned with software functions 566to utilize the services of server 530. For instance, function 566 can besimilar to the functions described for the wireless device 216 of FIG. 2in accordance with method 400.

Multiple forms of media services can be offered to media devices overlandline technologies such as those described above. Additionally, mediaservices can be offered to media devices by way of a wireless accessbase station 517 operating according to common wireless access protocolssuch as Global System for Mobile or GSM, Code Division Multiple Accessor CDMA, Time Division Multiple Access or TDMA, Universal MobileTelecommunications or UMTS, World interoperability for Microwave orWiMAX, Software Defined Radio or SDR, Long Term Evolution or LTE, and soon. Other present and next generation wide area wireless access networktechnologies can be used in one or more embodiments of the subjectdisclosure.

Other communication systems can be utilized to provide location-basedservices, such as based on aggregated location provided via a SIM card,including an IP Multimedia Subsystem (IMS) network architecture tofacilitate the combined services of circuit-switched and packet-switchedsystems.

FIG. 6 depicts an illustrative embodiment of a communication device 600.Communication device 600 can serve in whole or in part as anillustrative embodiment of the devices depicted in FIGS. 1-3 and 5, andcan be configured to perform portions of method 400. As an example,communication device 600 can: obtain, via a GPS circuit and a SIMantenna of a SIM card, GPS location data; obtain, via the SIM antennaand a wireless communication circuit of the SIM card, second locationdata; obtain, via a controller and a main antenna of the wirelessdevice, communication session measurement data; store the GPS locationdata, the second location data and the communication session measurementdata in a memory of the SIM card as aggregated location data; monitorfor a wireless network connection between the controller, via the mainantenna, and a wireless network; and responsive to a failure to detectthe wireless network connection between the controller and the wirelessnetwork, provide the aggregated location data to the wirelesscommunication circuit for wireless transmitting via the SIM antenna to awireless access point to cause the wireless access point to transmit theaggregated location data to a location server.

Communication device 600 can comprise a wireline and/or wirelesstransceiver 602 (herein transceiver 602), a user interface (UI) 604, apower supply 614, a location receiver 616, a motion sensor 618, anorientation sensor 620, and a controller 606 for managing operationsthereof. The transceiver 602 can support short-range or long-rangewireless access technologies such as Bluetooth®, ZigBee®, WiFi, DECT, orcellular communication technologies, just to mention a few (Bluetooth®and ZigBee® are trademarks registered by the Bluetooth® Special InterestGroup and the ZigBee® Alliance, respectively). Cellular technologies caninclude, for example, CDMA-1×, UMTS/HSDPA, GSM/GPRS, TDMA/EDGE, EV/DO,WiMAX, SDR, LTE, as well as other next generation wireless communicationtechnologies as they arise. The transceiver 602 can also be adapted tosupport circuit-switched wireline access technologies (such as PSTN),packet-switched wireline access technologies (such as TCP/IP, VoIP,etc.), and combinations thereof.

The UI 604 can include a depressible or touch-sensitive keypad 608 witha navigation mechanism such as a roller ball, a joystick, a mouse, or anavigation disk for manipulating operations of the communication device600. The keypad 608 can be an integral part of a housing assembly of thecommunication device 600 or an independent device operably coupledthereto by a tethered wireline interface (such as a USB cable) or awireless interface supporting for example Bluetooth®. The keypad 608 canrepresent a numeric keypad commonly used by phones, and/or a QWERTYkeypad with alphanumeric keys. The UI 604 can further include a display610 such as monochrome or color LCD (Liquid Crystal Display), OLED(Organic Light Emitting Diode) or other suitable display technology forconveying images to an end user of the communication device 600. In anembodiment where the display 610 is touch-sensitive, a portion or all ofthe keypad 608 can be presented by way of the display 610 withnavigation features.

The display 610 can use touch screen technology to also serve as a userinterface for detecting user input. As a touch screen display, thecommunication device 600 can be adapted to present a user interface withgraphical user interface (GUI) elements that can be selected by a userwith a touch of a finger. The touch screen display 610 can be equippedwith capacitive, resistive or other forms of sensing technology todetect how much surface area of a user's finger has been placed on aportion of the touch screen display. This sensing information can beused to control the manipulation of the GUI elements or other functionsof the user interface. The display 610 can be an integral part of thehousing assembly of the communication device 600 or an independentdevice communicatively coupled thereto by a tethered wireline interface(such as a cable) or a wireless interface.

The UI 604 can also include an audio system 612 that utilizes audiotechnology for conveying low volume audio (such as audio heard inproximity of a human ear) and high volume audio (such as speakerphonefor hands free operation). The audio system 612 can further include amicrophone for receiving audible signals of an end user. The audiosystem 612 can also be used for voice recognition applications. The UI604 can further include an image sensor 613 such as a charged coupleddevice (CCD) camera for capturing still or moving images.

The power supply 614 can utilize common power management technologiessuch as replaceable and rechargeable batteries, supply regulationtechnologies, and/or charging system technologies for supplying energyto the components of the communication device 600 to facilitatelong-range or short-range portable applications. Alternatively, or incombination, the charging system can utilize external power sources suchas DC power supplied over a physical interface such as a USB port orother suitable tethering technologies.

The location receiver 616 can utilize location technology such as aglobal positioning system (GPS) receiver capable of assisted GPS foridentifying a location of the communication device 600 based on signalsgenerated by a constellation of GPS satellites, which can be used forfacilitating location services such as navigation. The motion sensor 618can utilize motion sensing technology such as an accelerometer, agyroscope, or other suitable motion sensing technology to detect motionof the communication device 600 in three-dimensional space. Theorientation sensor 620 can utilize orientation sensing technology suchas a magnetometer to detect the orientation of the communication device600 (north, south, west, and east, as well as combined orientations indegrees, minutes, or other suitable orientation metrics) and could usebiometric sensors for example to activate the device or take biometricreadings.

The communication device 600 can use the transceiver 602 to alsodetermine a proximity to a cellular, WiFi, Bluetooth®, or other wirelessaccess points by sensing techniques such as utilizing a received signalstrength indicator (RSSI) and/or signal time of arrival (TOA) or time offlight (TOF) measurements. The controller 606 can utilize computingtechnologies such as a microprocessor, a digital signal processor (DSP),programmable gate arrays, application specific integrated circuits,and/or a video processor with associated storage memory such as Flash,ROM, RAM, SRAM, DRAM or other storage technologies for executingcomputer instructions, controlling, and processing data supplied by theaforementioned components of the communication device 600.

Other components not shown in FIG. 6 can be used in one or moreembodiments of the subject disclosure. For instance, the communicationdevice 600 can include a reset button (not shown). The reset button canbe used to reset the controller 606 of the communication device 600. Inyet another embodiment, the communication device 600 can also include afactory default setting button positioned, for example, below a smallhole in a housing assembly of the communication device 600 to force thecommunication device 600 to re-establish factory settings. In thisembodiment, a user can use a protruding object such as a pen or paperclip tip to reach into the hole and depress the default setting button.The communication device 600 can also include a slot for adding orremoving a SIM card 650. The SIM card 650 can be used for identifyingsubscriber services, executing programs, storing subscriber data, and soforth. The SIM card 650 can include one or more of the componentsdescribed with respect to SIM cards 100, 300, including a processor, awireless communication circuit, a GPS circuit, a SIM antenna and a SIMchip.

The communication device 600 as described herein can operate with moreor less of the circuit components shown in FIG. 6. These variantembodiments can be used in one or more embodiments of the subjectdisclosure.

The communication device 600 can be adapted to perform the functions ofSIM cards 100, 300, wireless device 216, data warehouse 230, the mediaprocessor 506, the media devices 508, or the portable communicationdevices 516. It will be appreciated that the communication device 600can also represent other devices that can operate in systems 200, 500,and/or perform some or all of the steps in method 400. In addition, thecontroller 606 can be adapted in various embodiments to perform thefunctions 562-566.

Upon reviewing the aforementioned embodiments, it would be evident to anartisan with ordinary skill in the art that said embodiments can bemodified, reduced, or enhanced without departing from the scope of theclaims described below. For example, the SIM card can be an embeddeddevice in the wireless device which is not removable. In anotherembodiment, the SIM card can be a multi-mode/multi-antenna devicecapable of wirelessly transmitting communications, separately orsimultaneously, utilizing different protocols over different antennas ofthe SIM card. Other embodiments can be used in the subject disclosure.

It should be understood that devices described in the exemplaryembodiments can be in communication with each other via various wirelessand/or wired methodologies. The methodologies can be links that aredescribed as coupled, connected and so forth, which can includeunidirectional and/or bidirectional communication over wireless pathsand/or wired paths that utilize one or more of various protocols ormethodologies, where the coupling and/or connection can be direct (e.g.,no intervening processing device) and/or indirect (e.g., an intermediaryprocessing device such as a router).

In one embodiment, the aggregated data or portions thereof can beutilized for performing multiple location determinations which can thenbe compared to further improve accuracy of the location determination.For example, the processor 110 of the SIM card 100 can perform a firstlocation determination based on all or some of the aggregated locationdata. The controller of the wireless device can perform a secondlocation determination base done data available to the controller, suchas network data, cell tower data, cellular triangulation data, and soforth. This data can be different or the same (in whole or in part) fromthe data that is utilized by the SIM card processor 100 for performingthe first location determination. A remote location server can perform athird location determination according to the aggregated data obtainedfrom the SIM card. This third location determination can be based on theaggregated data alone or can be supplemented with additional informationavailable the location server, such as network conditions and so forth.In one embodiment, the three location determinations can be compared todetermine whether they are within a threshold of each other. If they arewithin a threshold of each other then the location determinations can bedeemed accurate. If they are not within a threshold of each other, oneor more of the determinations can be discarded or additional data can becollected to repeat the three location determinations.

FIG. 7 depicts an exemplary diagrammatic representation of a machine inthe form of a computer system 700 within which a set of instructions,when executed, may cause the machine to perform any one or more of themethods described above. One or more instances of the machine canoperate, for example, as the SIM card 100, 300, 650, the data warehouse230, the server 530, the communication device 600 and other devices ofFIGS. 1-6. In some embodiments, the machine may be connected (e.g.,using a network 726) to other machines. In a networked deployment, themachine may operate in the capacity of a server or a client user machinein a server-client user network environment, or as a peer machine in apeer-to-peer (or distributed) network environment.

For example, the machine 700 can obtain, via a GPS circuit and a SIMantenna of a SIM card, GPS location data; obtain, via a WiFi circuit andthe SIM antenna, WiFi location data; obtain, via a wireless devicecontroller and a main antenna, communication session measurement data;store the GPS location data, the WiFi location data and thecommunication session measurement data in a memory of the SIM card asaggregated location data; responsive to a detection of a wirelessnetwork connection between the controller, via the main antenna, and awireless network, provide the aggregated location data to the controllerfor wireless transmitting to a location server; and responsive to afailure to detect the wireless network connection between the wirelessdevice controller and the wireless network, provide the aggregatedlocation data to the WiFi circuit for wireless transmitting via thesecond antenna to a wireless access point to cause the wireless accesspoint to transmit the aggregated location data to the location server.

The machine may comprise a server computer, a client user computer, apersonal computer (PC), a tablet, a smart phone, a laptop computer, adesktop computer, a control system, a network router, switch or bridge,or any machine capable of executing a set of instructions (sequential orotherwise) that specify actions to be taken by that machine. It will beunderstood that a communication device of the subject disclosureincludes broadly any electronic device that provides voice, video ordata communication. Further, while a single machine is illustrated, theterm “machine” shall also be taken to include any collection of machinesthat individually or jointly execute a set (or multiple sets) ofinstructions to perform any one or more of the methods discussed herein.

The computer system 700 may include a processor (or controller) 702(e.g., a central processing unit (CPU)), a graphics processing unit(GPU, or both), a main memory 704 and a static memory 706, whichcommunicate with each other via a bus 708. The computer system 700 mayfurther include a display unit 710 (e.g., a liquid crystal display(LCD), a flat panel, or a solid state display). The computer system 700may include an input device 712 (e.g., a keyboard), a cursor controldevice 714 (e.g., a mouse), a disk drive unit 716, a signal generationdevice 718 (e.g., a speaker or remote control) and a network interfacedevice 720. In distributed environments, the embodiments described inthe subject disclosure can be adapted to utilize multiple display units710 controlled by two or more computer systems 700. In thisconfiguration, presentations described by the subject disclosure may inpart be shown in a first of the display units 710, while the remainingportion is presented in a second of the display units 710.

The disk drive unit 716 may include a tangible computer-readable storagemedium 722 on which is stored one or more sets of instructions (e.g.,software 724) embodying any one or more of the methods or functionsdescribed herein, including those methods illustrated above. Theinstructions 724 may also reside, completely or at least partially,within the main memory 704, the static memory 706, and/or within theprocessor 702 during execution thereof by the computer system 700. Themain memory 704 and the processor 702 also may constitute tangiblecomputer-readable storage media.

Dedicated hardware implementations including, but not limited to,application specific integrated circuits, programmable logic arrays andother hardware devices can likewise be constructed to implement themethods described herein. Application specific integrated circuits andprogrammable logic array can use downloadable instructions for executingstate machines and/or circuit configurations to implement embodiments ofthe subject disclosure. Applications that may include the apparatus andsystems of various embodiments broadly include a variety of electronicand computer systems. Some embodiments implement functions in two ormore specific interconnected hardware modules or devices with relatedcontrol and data signals communicated between and through the modules,or as portions of an application-specific integrated circuit. Thus, theexample system is applicable to software, firmware, and hardwareimplementations.

In accordance with various embodiments of the subject disclosure, theoperations or methods described herein are intended for operation assoftware programs or instructions running on or executed by a computerprocessor or other computing device, and which may include other formsof instructions manifested as a state machine implemented with logiccomponents in an application specific integrated circuit or fieldprogrammable gate array. Furthermore, software implementations (e.g.,software programs, instructions, etc.) including, but not limited to,distributed processing or component/object distributed processing,parallel processing, or virtual machine processing can also beconstructed to implement the methods described herein. It is furthernoted that a computing device such as a processor, a controller, a statemachine or other suitable device for executing instructions to performoperations or methods may perform such operations directly or indirectlyby way of one or more intermediate devices directed by the computingdevice.

While the tangible computer-readable storage medium 722 is shown in anexample embodiment to be a single medium, the term “tangiblecomputer-readable storage medium” should be taken to include a singlemedium or multiple media (e.g., a centralized or distributed database,and/or associated caches and servers) that store the one or more sets ofinstructions. The term “tangible computer-readable storage medium” shallalso be taken to include any non-transitory medium that is capable ofstoring or encoding a set of instructions for execution by the machineand that cause the machine to perform any one or more of the methods ofthe subject disclosure. The term “non-transitory” as in a non-transitorycomputer-readable storage includes without limitation memories, drives,devices and anything tangible but not a signal per se.

The term “tangible computer-readable storage medium” shall accordinglybe taken to include, but not be limited to: solid-state memories such asa memory card or other package that houses one or more read-only(non-volatile) memories, random access memories, or other re-writable(volatile) memories, a magneto-optical or optical medium such as a diskor tape, or other tangible media which can be used to store information.Accordingly, the disclosure is considered to include any one or more ofa tangible computer-readable storage medium, as listed herein andincluding art-recognized equivalents and successor media, in which thesoftware implementations herein are stored.

Although the present specification describes components and functionsimplemented in the embodiments with reference to particular standardsand protocols, the disclosure is not limited to such standards andprotocols. Each of the standards for Internet and other packet switchednetwork transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) representexamples of the state of the art. Such standards are from time-to-timesuperseded by faster or more efficient equivalents having essentiallythe same functions. Wireless standards for device detection (e.g.,RFID), short-range communications (e.g., Bluetooth®, WiFi, Zigbee®), andlong-range communications (e.g., WiMAX, GSM, CDMA, LTE) can be used bycomputer system 700.

The illustrations of embodiments described herein are intended toprovide a general understanding of the structure of various embodiments,and they are not intended to serve as a complete description of all theelements and features of apparatus and systems that might make use ofthe structures described herein. Many other embodiments will be apparentto those of skill in the art upon reviewing the above description. Theexemplary embodiments can include combinations of features and/or stepsfrom multiple embodiments. Other embodiments may be utilized and derivedtherefrom, such that structural and logical substitutions and changesmay be made without departing from the scope of this disclosure. Figuresare also merely representational and may not be drawn to scale. Certainproportions thereof may be exaggerated, while others may be minimized.Accordingly, the specification and drawings are to be regarded in anillustrative rather than a restrictive sense.

Although specific embodiments have been illustrated and describedherein, it should be appreciated that any arrangement which achieves thesame or similar purpose may be substituted for the embodiments describedor shown by the subject disclosure. The subject disclosure is intendedto cover any and all adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, can be used in the subject disclosure.For instance, one or more features from one or more embodiments can becombined with one or more features of one or more other embodiments. Inone or more embodiments, features that are positively recited can alsobe negatively recited and excluded from the embodiment with or withoutreplacement by another structural and/or functional feature. The stepsor functions described with respect to the embodiments of the subjectdisclosure can be performed in any order. The steps or functionsdescribed with respect to the embodiments of the subject disclosure canbe performed alone or in combination with other steps or functions ofthe subject disclosure, as well as from other embodiments or from othersteps that have not been described in the subject disclosure. Further,more than or less than all of the features described with respect to anembodiment can also be utilized.

Less than all of the steps or functions described with respect to theexemplary processes or methods can also be performed in one or more ofthe exemplary embodiments. Further, the use of numerical terms todescribe a device, component, step or function, such as first, second,third, and so forth, is not intended to describe an order or functionunless expressly stated so. The use of the terms first, second, thirdand so forth, is generally to distinguish between devices, components,steps or functions unless expressly stated otherwise. Additionally, oneor more devices or components described with respect to the exemplaryembodiments can facilitate one or more functions, where the facilitating(e.g., facilitating access or facilitating establishing a connection)can include less than every step needed to perform the function or caninclude all of the steps needed to perform the function.

In one or more embodiments, a processor (which can include a controlleror circuit) has been described that performs various functions. Itshould be understood that the processor can be multiple processors,which can include distributed processors or parallel processors in asingle machine or multiple machines. The processor can be used insupporting a virtual processing environment. The virtual processingenvironment may support one or more virtual machines representingcomputers, servers, or other computing devices. In such virtualmachines, components such as microprocessors and storage devices may bevirtualized or logically represented. The processor can include a statemachine, application specific integrated circuit, and/or programmablegate array including a Field PGA. In one or more embodiments, when aprocessor executes instructions to perform “operations”, this caninclude the processor performing the operations directly and/orfacilitating, directing, or cooperating with another device or componentto perform the operations.

The Abstract of the Disclosure is provided with the understanding thatit will not be used to interpret or limit the scope or meaning of theclaims. In addition, in the foregoing Detailed Description, it can beseen that various features are grouped together in a single embodimentfor the purpose of streamlining the disclosure. This method ofdisclosure is not to be interpreted as reflecting an intention that theclaimed embodiments require more features than are expressly recited ineach claim. Rather, as the following claims reflect, inventive subjectmatter lies in less than all features of a single disclosed embodiment.Thus the following claims are hereby incorporated into the DetailedDescription, with each claim standing on its own as a separately claimedsubject matter.

What is claimed is:
 1. A communication device, comprising: a firstmemory that stores first executable instructions; a first antenna; acontroller coupled with the first memory and the first antenna, whereinthe controller, responsive to executing the first executableinstructions, provides wireless communication services via the firstantenna including establishing wireless communication sessions withother communication devices; and a subscriber identity module includinga second antenna, a GPS circuit, a WiFi circuit, a processor and asecond memory that stores second executable instructions, wherein theprocessor, responsive to executing the second executable instructions,facilitates performance of operations comprising: obtaining, via the GPScircuit and the second antenna, GPS location data; obtaining, via theWiFi circuit and the second antenna, WiFi location data; obtaining, viathe controller and the first antenna, communication session measurementdata; storing the GPS location data, the WiFi location data and thecommunication session measurement data in the second memory asaggregated location data; responsive to a detection of a wirelessnetwork connection between the controller, via the first antenna, and awireless network, providing the aggregated location data to thecontroller for wireless transmitting to a location server; andresponsive to a failure to detect the wireless network connectionbetween the controller and the wireless network, providing theaggregated location data to the WiFi circuit for wireless transmittingvia the second antenna to a wireless access point to cause the wirelessaccess point to transmit the aggregated location data to the locationserver.
 2. The communication device of claim 1, wherein the failure todetect the wireless network connection between the controller and thewireless network comprises: monitoring for the wireless networkconnection between the controller, via the first antenna, and thewireless network over a time period, and providing the aggregatedlocation data to the WiFi circuit after expiration of the time period.3. The communication device of claim 2, wherein the subscriber identitymodule is a removable device, and wherein the communication sessionmeasurement data includes signal strength information.
 4. Thecommunication device of claim 2, wherein the communication sessionmeasurement data includes signal round trip time information.
 5. Thecommunication device of claim 2, wherein the storing of the aggregatedlocation data in the second memory is performed without storing theaggregated location data in the first memory.
 6. The communicationdevice of claim 1, wherein the operations further comprise: obtaining,via the controller, device diagnostic data including performancemeasurements for operations of the communication device; storing thedevice diagnostic data in the second memory; responsive to the detectionof the wireless network connection between the controller, via the firstantenna, and the wireless network, providing the device diagnostic datato the controller for wireless transmitting to a diagnostics server; andresponsive to the failure to detect the wireless network connectionbetween the controller and the wireless network, providing the devicediagnostic data to the WiFi circuit for wireless transmitting via thesecond antenna to the wireless access point to cause the wireless accesspoint to transmit the aggregated location data to the diagnosticsserver.
 7. The communication device of claim 1, wherein the wirelesscommunication services include receiving product, location or otherinformation associated with a product in proximity to the communicationdevice, wherein the product or other information is received via thefirst antenna from a content server responsive to the content serverreceiving a location of the communication device from the locationserver, and wherein the location of the communication device isdetermined based on an analysis of the aggregated location data by thelocation server.
 8. The communication device of claim 7, wherein theproduct information comprises a coupon associated with the product, andwherein the location of the communication device indicates the proximitywith respect to the product.
 9. The communication device of claim 1,wherein the wireless communication services include a location-basedservice, wherein the location-based service is provided via the firstantenna from a network application server responsive to the networkapplication server receiving a location of the communication device fromthe location server, and wherein the location of the communicationdevice is determined based on an analysis of the aggregated locationdata by the location server.
 10. The communication device of claim 1,wherein the controller, via the first antenna, receives a location ofthe communication device from the location server, and wherein thelocation of the communication device is determined based on an analysisof the aggregated location data by the location server.
 11. Thecommunication device of claim 1, wherein the processor, via the secondantenna and the WiFi circuit, receives a location of the communicationdevice from the location server, and wherein the location of thecommunication device is determined based on an analysis of theaggregated location data by the location server.
 12. The communicationdevice of claim 1, wherein the processor receives the location via thesecond antenna and the WiFi circuit responsive to a lack of the wirelessnetwork connection between the controller and the wireless network. 13.A machine-readable storage medium, comprising executable instructionsthat, when executed by a processor of a subscriber identity module of awireless communication device, facilitate performance of operations,comprising: obtaining, via a GPS circuit and a second antenna of thesubscriber identity module, GPS location data; obtaining, via the secondantenna and a wireless communication circuit of the subscriber identitymodule, second location data; obtaining, via a controller and a firstantenna of the wireless communication device, communication sessionmeasurement data; storing the GPS location data, the second locationdata and the communication session measurement data in a memory of thesubscriber identity module as aggregated location data; monitoring for awireless network connection between the controller, via the firstantenna, and a wireless network; and responsive to a failure to detectthe wireless network connection between the controller and the wirelessnetwork, providing the aggregated location data to the wirelesscommunication circuit for wireless transmitting via the second antennato a wireless access point to cause the wireless access point totransmit the aggregated location data to a location server.
 14. Themachine-readable storage medium of claim 13, wherein the wirelesscommunication circuit enables wireless communications via the secondantenna utilizing WiFi, Bluetooth, Near Field Communications, or acombination thereof.
 15. The machine-readable storage medium of claim13, wherein the operations further comprise, responsive to a lack of thewireless network connection between the controller and the wirelessnetwork, receiving, at the processor via the second antenna and thewireless communication circuit, a location of the communication devicefrom the location server, and wherein the location of the communicationdevice is determined based on an analysis of the aggregated locationdata by the location server.
 16. The machine-readable storage medium ofclaim 13, wherein the wireless communication circuit comprises amulti-mode device that enables wireless communications utilizing a groupof different wireless protocols, wherein the operations further compriseselecting a target wireless protocol from among the group of differentwireless protocols for the wireless transmitting via the wirelesscommunication circuit and the second antenna to the wireless accesspoint, and wherein the selecting is according to performance parametersdetermined for the group of different wireless protocols, availabilityof the wireless access point for the group of different wirelessprotocols, or a combination thereof.
 17. The machine-readable storagemedium of claim 13, wherein the providing of the aggregated locationdata to the wireless communication circuit for the wireless transmittingto the wireless access point causes the controller to receive product,location or other information associated with a product in proximity tothe communication device, wherein the product or other information isreceived via the first antenna from a content server responsive to thecontent server receiving a location of the communication device from thelocation server, and wherein the location of the communication device isdetermined based on an analysis of the aggregated location data by thelocation server.
 18. A method comprising: receiving, by a systemincluding a processor, aggregated location data from a WiFi circuit anda second antenna of a subscriber identity module of a wirelesscommunication device without receiving the aggregated location data froma controller and a first antenna of the wireless communication device,wherein the controller and the first antenna enable wirelesscommunication services for the wireless communication device, whereinthe aggregated location data includes GPS location data, WiFi locationdata, and communication session measurement data, wherein the GPSlocation data is collected by a GPS circuit of the subscriber identitymodule, wherein the WiFi location data is collected by the WiFi circuitof the subscriber identity module, and wherein the communication sessionmeasurement data is collected by the controller of the wirelesscommunication device; analyzing, by the system, the aggregated locationdata to determine a location of the wireless communication device; andtransmitting, by the system, the location of the wireless communicationdevice to the wireless communication device to enable the controller ofthe wireless communication device to provide a location-based service atthe wireless communication device.
 19. The method of claim 18, whereinthe transmitting of the location of the wireless communication device tothe wireless communication device comprises: monitoring for a wirelessnetwork connection between the controller, via the first antenna, and awireless network; and responsive to a failure to detect the wirelessnetwork connection between the controller and the wireless network,transmitting the aggregated location data to a wireless access point tocause the wireless access point to transmit the aggregated location datato the WiFi circuit via the second antenna.
 20. The method of claim 18,wherein the location-based service comprises receiving product, locationor other information associated with a product in proximity to thewireless communication device, wherein the product or other informationis received from a content server responsive to the content serverreceiving the location of the wireless communication device, wherein theproduct information comprises a coupon associated with the product, andwherein the location of the wireless communication device indicates theproximity with respect to the product.